[INFO] fetching crate ra_ap_syntax 0.0.187...
[INFO] checking ra_ap_syntax-0.0.187 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate ra_ap_syntax 0.0.187 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate ra_ap_syntax 0.0.187 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ra_ap_syntax 0.0.187
[INFO] finished tweaking crates.io crate ra_ap_syntax 0.0.187
[INFO] tweaked toml for crates.io crate ra_ap_syntax 0.0.187 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e91ea53bb96b4d72a5fd0c81dc2ad92652753fb353b6a7a7fe26c9a14cee8071
[INFO] running `Command { std: "docker" "start" "-a" "e91ea53bb96b4d72a5fd0c81dc2ad92652753fb353b6a7a7fe26c9a14cee8071", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e91ea53bb96b4d72a5fd0c81dc2ad92652753fb353b6a7a7fe26c9a14cee8071", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e91ea53bb96b4d72a5fd0c81dc2ad92652753fb353b6a7a7fe26c9a14cee8071", kill_on_drop: false }`
[INFO] [stdout] e91ea53bb96b4d72a5fd0c81dc2ad92652753fb353b6a7a7fe26c9a14cee8071
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2e2392c18f7ffc5887b5f42eebba6f4e1267ceaee1f5f1ce3419e5bde85b930c
[INFO] running `Command { std: "docker" "start" "-a" "2e2392c18f7ffc5887b5f42eebba6f4e1267ceaee1f5f1ce3419e5bde85b930c", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking unicode-properties v0.1.1
[INFO] [stderr]     Checking unicode-xid v0.2.4
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]     Checking perf-event-open-sys v1.0.1
[INFO] [stderr]     Checking text-size v1.1.1
[INFO] [stderr]     Checking ra-ap-rustc_lexer v0.20.0
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]     Checking perf-event v0.4.7
[INFO] [stderr]     Checking always-assert v0.1.3
[INFO] [stderr]     Checking ra_ap_limit v0.0.187
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]     Checking jod-thread v0.1.2
[INFO] [stderr]     Checking drop_bomb v0.1.5
[INFO] [stderr]     Checking la-arena v0.3.1
[INFO] [stderr]     Checking triomphe v0.1.11
[INFO] [stderr]     Checking smol_str v0.2.1
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking indexmap v2.2.5
[INFO] [stderr]     Checking cov-mark v2.0.0-pre.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.12
[INFO] [stderr]    Compiling ra-ap-rustc_index_macros v0.20.0
[INFO] [stderr]     Checking countme v3.0.1
[INFO] [stderr]     Checking ra_ap_profile v0.0.187
[INFO] [stderr]     Checking rowan v0.15.15
[INFO] [stderr]     Checking ra_ap_stdx v0.0.187
[INFO] [stderr]     Checking ra_ap_text_edit v0.0.187
[INFO] [stderr]     Checking ra-ap-rustc_index v0.20.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking ra-ap-rustc_parse_format v0.20.0
[INFO] [stderr]     Checking ra-ap-rustc_abi v0.20.0
[INFO] [stderr]     Checking ra_ap_rustc-dependencies v0.0.187
[INFO] [stderr]     Checking ra_ap_parser v0.0.187
[INFO] [stderr]     Checking ra_ap_syntax v0.0.187 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]    --> src/parsing/reparsing.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |     use test_utils::{assert_eq_text, extract_range};
[INFO] [stdout]     |         ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `proc_macro2`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use proc_macro2::{Punct, Spacing};
[INFO] [stdout]    |     ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quote`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use quote::{format_ident, quote};
[INFO] [stdout]    |     ^^^^^ use of undeclared crate or module `quote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `rayon`
[INFO] [stdout]   --> src/tests.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^ use of undeclared crate or module `rayon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ungrammar`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ungrammar::{Grammar, Rule};
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `ungrammar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `expect_test`
[INFO] [stdout]    --> src/algo.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |     use expect_test::{expect, Expect};
[INFO] [stdout]     |         ^^^^^^^^^^^ use of undeclared crate or module `expect_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]    --> src/ast/edit_in_place.rs:944:9
[INFO] [stdout]     |
[INFO] [stdout] 944 |     use test_utils::assert_eq_text;
[INFO] [stdout]     |         ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `expect_test`
[INFO] [stdout]   --> src/tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use expect_test::expect_file;
[INFO] [stdout]    |     ^^^^^^^^^^^ use of undeclared crate or module `expect_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]   --> src/tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use test_utils::{bench, bench_fixture, project_root};
[INFO] [stdout]    |     ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `sourcegen` in the list of imported crates
[INFO] [stdout]   --> src/tests.rs:84:23
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut files = ::sourcegen::list_rust_files(&crates_dir);
[INFO] [stdout]    |                       ^^^^^^^^^ could not find `sourcegen` in the list of imported crates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stdx::trim_indent`
[INFO] [stdout]    --> src/ast/edit_in_place.rs:943:9
[INFO] [stdout]     |
[INFO] [stdout] 943 |     use stdx::trim_indent;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         sourcegen::project_root().join("crates/parser/src/syntax_kind/generated.rs");
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     sourcegen::ensure_file_contents(syntax_kinds_file.as_path(), &syntax_kinds);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         sourcegen::project_root().join("crates/syntax/src/ast/generated/tokens.rs");
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     sourcegen::ensure_file_contents(ast_tokens_file.as_path(), &ast_tokens);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:37:26
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let ast_nodes_file = sourcegen::project_root().join("crates/syntax/src/ast/generated/nodes.rs");
[INFO] [stdout]    |                          ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     sourcegen::ensure_file_contents(ast_nodes_file.as_path(), &ast_nodes);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     sourcegen::add_preamble(
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         sourcegen::reformat(
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:325:15
[INFO] [stdout]     |
[INFO] [stdout] 325 |     let res = sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(res));
[INFO] [stdout]     |               ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:325:56
[INFO] [stdout]     |
[INFO] [stdout] 325 |     let res = sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(res));
[INFO] [stdout]     |                                                        ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:455:5
[INFO] [stdout]     |
[INFO] [stdout] 455 |     sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(ast.to_string()))
[INFO] [stdout]     |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:455:46
[INFO] [stdout]     |
[INFO] [stdout] 455 |     sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(ast.to_string()))
[INFO] [stdout]     |                                              ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]   --> src/tests.rs:97:22
[INFO] [stdout]    |
[INFO] [stdout] 97 |         .filter_map(|file| {
[INFO] [stdout]    |                      ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]   --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/std/src/path.rs:1992:12
[INFO] [stdout]    = note: all function arguments must have a statically known size
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 Err(err) => Some((file, err)),
[INFO] [stdout]     |                             ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 Err(err) => Some((file, err)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:100:26
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 Ok(_) => None,
[INFO] [stdout]     |                          ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/158f00a1c5175648af6f6099b075f78d1d014a28/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:565:21
[INFO] [stdout]     |
[INFO] [stdout] 565 |     fn ty(&self) -> proc_macro2::Ident {
[INFO] [stdout]     |                     ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:519:30
[INFO] [stdout]     |
[INFO] [stdout] 519 |     fn method_name(&self) -> proc_macro2::Ident {
[INFO] [stdout]     |                              ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:513:28
[INFO] [stdout]     |
[INFO] [stdout] 513 |                 let token: proc_macro2::TokenStream = token.parse().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:510:36
[INFO] [stdout]     |
[INFO] [stdout] 510 |     fn token_kind(&self) -> Option<proc_macro2::TokenStream> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 30 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ra_ap_syntax` (lib test) due to 31 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "2e2392c18f7ffc5887b5f42eebba6f4e1267ceaee1f5f1ce3419e5bde85b930c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e2392c18f7ffc5887b5f42eebba6f4e1267ceaee1f5f1ce3419e5bde85b930c", kill_on_drop: false }`
[INFO] [stdout] 2e2392c18f7ffc5887b5f42eebba6f4e1267ceaee1f5f1ce3419e5bde85b930c
[INFO] checking ra_ap_syntax-0.0.187 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate ra_ap_syntax 0.0.187 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate ra_ap_syntax 0.0.187 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ra_ap_syntax 0.0.187
[INFO] finished tweaking crates.io crate ra_ap_syntax 0.0.187
[INFO] tweaked toml for crates.io crate ra_ap_syntax 0.0.187 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 41cad30742158d6782c4a8795d9b297039a36f4581fd9cb4a90a9d68b451e327
[INFO] running `Command { std: "docker" "start" "-a" "41cad30742158d6782c4a8795d9b297039a36f4581fd9cb4a90a9d68b451e327", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "41cad30742158d6782c4a8795d9b297039a36f4581fd9cb4a90a9d68b451e327", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41cad30742158d6782c4a8795d9b297039a36f4581fd9cb4a90a9d68b451e327", kill_on_drop: false }`
[INFO] [stdout] 41cad30742158d6782c4a8795d9b297039a36f4581fd9cb4a90a9d68b451e327
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 88d649a2853f2e8a259ce5bdd8b8c172f87a64523176e79a536c142a902f7019
[INFO] running `Command { std: "docker" "start" "-a" "88d649a2853f2e8a259ce5bdd8b8c172f87a64523176e79a536c142a902f7019", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]     Checking unicode-properties v0.1.1
[INFO] [stderr]     Checking unicode-xid v0.2.4
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]     Checking perf-event-open-sys v1.0.1
[INFO] [stderr]     Checking text-size v1.1.1
[INFO] [stderr]     Checking ra-ap-rustc_lexer v0.20.0
[INFO] [stderr]     Checking either v1.10.0
[INFO] [stderr]     Checking perf-event v0.4.7
[INFO] [stderr]     Checking always-assert v0.1.3
[INFO] [stderr]     Checking la-arena v0.3.1
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]     Checking jod-thread v0.1.2
[INFO] [stderr]     Checking ra_ap_limit v0.0.187
[INFO] [stderr]     Checking drop_bomb v0.1.5
[INFO] [stderr]     Checking smol_str v0.2.1
[INFO] [stderr]     Checking cov-mark v2.0.0-pre.1
[INFO] [stderr]     Checking triomphe v0.1.11
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking indexmap v2.2.5
[INFO] [stderr]     Checking crossbeam-channel v0.5.12
[INFO] [stderr]    Compiling ra-ap-rustc_index_macros v0.20.0
[INFO] [stderr]     Checking countme v3.0.1
[INFO] [stderr]     Checking ra_ap_profile v0.0.187
[INFO] [stderr]     Checking rowan v0.15.15
[INFO] [stderr]     Checking ra_ap_stdx v0.0.187
[INFO] [stderr]     Checking ra-ap-rustc_index v0.20.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking ra_ap_text_edit v0.0.187
[INFO] [stderr]     Checking ra-ap-rustc_parse_format v0.20.0
[INFO] [stderr]     Checking ra-ap-rustc_abi v0.20.0
[INFO] [stderr]     Checking ra_ap_rustc-dependencies v0.0.187
[INFO] [stderr]     Checking ra_ap_parser v0.0.187
[INFO] [stderr]     Checking ra_ap_syntax v0.0.187 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]    --> src/parsing/reparsing.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |     use test_utils::{assert_eq_text, extract_range};
[INFO] [stdout]     |         ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `proc_macro2`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use proc_macro2::{Punct, Spacing};
[INFO] [stdout]    |     ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quote`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use quote::{format_ident, quote};
[INFO] [stdout]    |     ^^^^^ use of undeclared crate or module `quote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `rayon`
[INFO] [stdout]   --> src/tests.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^ use of undeclared crate or module `rayon`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `ungrammar`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ungrammar::{Grammar, Rule};
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `ungrammar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `expect_test`
[INFO] [stdout]    --> src/algo.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |     use expect_test::{expect, Expect};
[INFO] [stdout]     |         ^^^^^^^^^^^ use of undeclared crate or module `expect_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]    --> src/ast/edit_in_place.rs:944:9
[INFO] [stdout]     |
[INFO] [stdout] 944 |     use test_utils::assert_eq_text;
[INFO] [stdout]     |         ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `expect_test`
[INFO] [stdout]   --> src/tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use expect_test::expect_file;
[INFO] [stdout]    |     ^^^^^^^^^^^ use of undeclared crate or module `expect_test`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `test_utils`
[INFO] [stdout]   --> src/tests.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use test_utils::{bench, bench_fixture, project_root};
[INFO] [stdout]    |     ^^^^^^^^^^ use of undeclared crate or module `test_utils`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parsing/reparsing.rs:134:14
[INFO] [stdout]     |
[INFO] [stdout] 134 |     for i in 1..lexed.len() - 1 {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/validation.rs:120:59
[INFO] [stdout]     |
[INFO] [stdout] 120 |         text.rfind(end_delimiter).and_then(|end| text.get(prefix_len..end))
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ast/token_ext.rs:48:41
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 let text = &self.text()[prefix.len()..];
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:120:50
[INFO] [stdout]     |
[INFO] [stdout] 120 |         text.find('\n').map_or(false, |idx| text[idx + 1..].contains('\n'))
[INFO] [stdout]     |                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:424:36
[INFO] [stdout]     |
[INFO] [stdout] 424 |                     suffix = &text[suffix_start..];
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:428:32
[INFO] [stdout]     |
[INFO] [stdout] 428 |                 suffix = &text[suffix_start..];
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:573:26
[INFO] [stdout]     |
[INFO] [stdout] 573 |             text = &text[1..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:578:26
[INFO] [stdout]     |
[INFO] [stdout] 578 |             text = &text[0..text.len() - 1];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:589:26
[INFO] [stdout]     |
[INFO] [stdout] 589 |             text = &text[2..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:594:26
[INFO] [stdout]     |
[INFO] [stdout] 594 |             text = &text[0..text.len() - 1];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ast/edit.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 let level = text[pos + 1..].chars().count() / 4;
[INFO] [stdout]    |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:264:33
[INFO] [stdout]     |
[INFO] [stdout] 264 |                 ted::remove_all(next_token..=generic_param.syntax().clone().into());
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:268:33
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 ted::remove_all(generic_param.syntax().clone().into()..=next_token);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 |             ted::remove_all(eq..=last);
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:331:29
[INFO] [stdout]     |
[INFO] [stdout] 331 |             ted::remove_all(eq..=last);
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:348:44
[INFO] [stdout]     |
[INFO] [stdout] 348 |             Some(colon) => ted::remove_all(colon..=self.syntax().clone().into()),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:539:33
[INFO] [stdout]     |
[INFO] [stdout] 539 |             let rest = &ws_text[0..prev_newline];
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:864:37
[INFO] [stdout]     |
[INFO] [stdout] 864 |                     ted::remove_all(start..=end);
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/make.rs:489:56
[INFO] [stdout]     |
[INFO] [stdout] 489 |                         format_to!(buf, "{}", &content[1..])
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/fuzz.rs:40:18
[INFO] [stdout]    |
[INFO] [stdout] 40 |         text.get(delete_start..delete_start.checked_add(delete_len)?)?; // make sure delete is a valid range
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/fuzz.rs:44:69
[INFO] [stdout]    |
[INFO] [stdout] 44 |             format!("{}{}{}", &text[..delete_start], &insert, &text[delete_start + delete_len..]);
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ted.rs:103:28
[INFO] [stdout]     |
[INFO] [stdout] 103 |     parent.splice_children(index..index, elements);
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ted.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 remove_all(first..=last);
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ted.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |     replace_all(old.clone()..=old, new);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ted.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |     parent.splice_children(start..end + 1, new);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lib.rs:229:30
[INFO] [stdout]     |
[INFO] [stdout] 229 |                     for _ in 1..n_input_tokens {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `sourcegen` in the list of imported crates
[INFO] [stdout]   --> src/tests.rs:84:23
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut files = ::sourcegen::list_rust_files(&crates_dir);
[INFO] [stdout]    |                       ^^^^^^^^^ could not find `sourcegen` in the list of imported crates
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parsing/reparsing.rs:134:14
[INFO] [stdout]     |
[INFO] [stdout] 134 |     for i in 1..lexed.len() - 1 {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/validation.rs:120:59
[INFO] [stdout]     |
[INFO] [stdout] 120 |         text.rfind(end_delimiter).and_then(|end| text.get(prefix_len..end))
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:730:22
[INFO] [stdout]     |
[INFO] [stdout] 730 |             for j in 0..i {
[INFO] [stdout]     |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ast/token_ext.rs:48:41
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 let text = &self.text()[prefix.len()..];
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:120:50
[INFO] [stdout]     |
[INFO] [stdout] 120 |         text.find('\n').map_or(false, |idx| text[idx + 1..].contains('\n'))
[INFO] [stdout]     |                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:424:36
[INFO] [stdout]     |
[INFO] [stdout] 424 |                     suffix = &text[suffix_start..];
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:428:32
[INFO] [stdout]     |
[INFO] [stdout] 428 |                 suffix = &text[suffix_start..];
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:573:26
[INFO] [stdout]     |
[INFO] [stdout] 573 |             text = &text[1..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:578:26
[INFO] [stdout]     |
[INFO] [stdout] 578 |             text = &text[0..text.len() - 1];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:589:26
[INFO] [stdout]     |
[INFO] [stdout] 589 |             text = &text[2..];
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/token_ext.rs:594:26
[INFO] [stdout]     |
[INFO] [stdout] 594 |             text = &text[0..text.len() - 1];
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/ast/edit.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 let level = text[pos + 1..].chars().count() / 4;
[INFO] [stdout]    |                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:264:33
[INFO] [stdout]     |
[INFO] [stdout] 264 |                 ted::remove_all(next_token..=generic_param.syntax().clone().into());
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:268:33
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 ted::remove_all(generic_param.syntax().clone().into()..=next_token);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 |             ted::remove_all(eq..=last);
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:331:29
[INFO] [stdout]     |
[INFO] [stdout] 331 |             ted::remove_all(eq..=last);
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:348:44
[INFO] [stdout]     |
[INFO] [stdout] 348 |             Some(colon) => ted::remove_all(colon..=self.syntax().clone().into()),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:539:33
[INFO] [stdout]     |
[INFO] [stdout] 539 |             let rest = &ws_text[0..prev_newline];
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ast/edit_in_place.rs:864:37
[INFO] [stdout]     |
[INFO] [stdout] 864 |                     ted::remove_all(start..=end);
[INFO] [stdout]     |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stdx::trim_indent`
[INFO] [stdout]    --> src/ast/edit_in_place.rs:943:9
[INFO] [stdout]     |
[INFO] [stdout] 943 |     use stdx::trim_indent;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ast/make.rs:489:56
[INFO] [stdout]     |
[INFO] [stdout] 489 |                         format_to!(buf, "{}", &content[1..])
[INFO] [stdout]     |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/fuzz.rs:40:18
[INFO] [stdout]    |
[INFO] [stdout] 40 |         text.get(delete_start..delete_start.checked_add(delete_len)?)?; // make sure delete is a valid range
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/fuzz.rs:44:69
[INFO] [stdout]    |
[INFO] [stdout] 44 |             format!("{}{}{}", &text[..delete_start], &insert, &text[delete_start + delete_len..]);
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ted.rs:103:28
[INFO] [stdout]     |
[INFO] [stdout] 103 |     parent.splice_children(index..index, elements);
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ted.rs:120:28
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 remove_all(first..=last);
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/ted.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |     replace_all(old.clone()..=old, new);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ted.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |     parent.splice_children(start..end + 1, new);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lib.rs:229:30
[INFO] [stdout]     |
[INFO] [stdout] 229 |                     for _ in 1..n_input_tokens {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         sourcegen::project_root().join("crates/parser/src/syntax_kind/generated.rs");
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     sourcegen::ensure_file_contents(syntax_kinds_file.as_path(), &syntax_kinds);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         sourcegen::project_root().join("crates/syntax/src/ast/generated/tokens.rs");
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     sourcegen::ensure_file_contents(ast_tokens_file.as_path(), &ast_tokens);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:37:26
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let ast_nodes_file = sourcegen::project_root().join("crates/syntax/src/ast/generated/nodes.rs");
[INFO] [stdout]    |                          ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     sourcegen::ensure_file_contents(ast_nodes_file.as_path(), &ast_nodes);
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 |     sourcegen::add_preamble(
[INFO] [stdout]    |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]   --> src/tests/sourcegen_ast.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         sourcegen::reformat(
[INFO] [stdout]    |         ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:325:15
[INFO] [stdout]     |
[INFO] [stdout] 325 |     let res = sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(res));
[INFO] [stdout]     |               ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:325:56
[INFO] [stdout]     |
[INFO] [stdout] 325 |     let res = sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(res));
[INFO] [stdout]     |                                                        ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:455:5
[INFO] [stdout]     |
[INFO] [stdout] 455 |     sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(ast.to_string()))
[INFO] [stdout]     |     ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `sourcegen`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:455:46
[INFO] [stdout]     |
[INFO] [stdout] 455 |     sourcegen::add_preamble("sourcegen_ast", sourcegen::reformat(ast.to_string()))
[INFO] [stdout]     |                                              ^^^^^^^^^ use of undeclared crate or module `sourcegen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]   --> src/tests.rs:97:22
[INFO] [stdout]    |
[INFO] [stdout] 97 |         .filter_map(|file| {
[INFO] [stdout]    |                      ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout]    = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]   --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/std/src/path.rs:1992:12
[INFO] [stdout]    = note: all function arguments must have a statically known size
[INFO] [stdout]    = help: unsized fn params are gated as an unstable feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 Err(err) => Some((file, err)),
[INFO] [stdout]     |                             ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 Err(err) => Some((file, err)),
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
[INFO] [stdout]    --> src/tests.rs:100:26
[INFO] [stdout]     |
[INFO] [stdout] 100 |                 Ok(_) => None,
[INFO] [stdout]     |                          ^^^^ doesn't have a size known at compile-time
[INFO] [stdout]     |
[INFO] [stdout]     = help: within `std::path::Path`, the trait `Sized` is not implemented for `[u8]`, which is required by `std::path::Path: Sized`
[INFO] [stdout] note: required because it appears within the type `std::path::Path`
[INFO] [stdout]    --> /rustc/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/library/std/src/path.rs:1992:12
[INFO] [stdout]     = note: only the last element of a tuple may have a dynamically sized type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeInclusive` type in public function
[INFO] [stdout]    --> src/ted.rs:109:26
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn remove_all(range: RangeInclusive<SyntaxElement>) {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `RangeInclusive` type in public function
[INFO] [stdout]    --> src/ted.rs:134:27
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn replace_all(range: RangeInclusive<SyntaxElement>, new: Vec<SyntaxElement>) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ra_ap_syntax` (lib) due to 3 previous errors; 26 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:565:21
[INFO] [stdout]     |
[INFO] [stdout] 565 |     fn ty(&self) -> proc_macro2::Ident {
[INFO] [stdout]     |                     ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:519:30
[INFO] [stdout]     |
[INFO] [stdout] 519 |     fn method_name(&self) -> proc_macro2::Ident {
[INFO] [stdout]     |                              ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:513:28
[INFO] [stdout]     |
[INFO] [stdout] 513 |                 let token: proc_macro2::TokenStream = token.parse().unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `proc_macro2`
[INFO] [stdout]    --> src/tests/sourcegen_ast.rs:510:36
[INFO] [stdout]     |
[INFO] [stdout] 510 |     fn token_kind(&self) -> Option<proc_macro2::TokenStream> {
[INFO] [stdout]     |                                    ^^^^^^^^^^^ use of undeclared crate or module `proc_macro2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 30 previous errors; 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ra_ap_syntax` (lib test) due to 31 previous errors; 28 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "88d649a2853f2e8a259ce5bdd8b8c172f87a64523176e79a536c142a902f7019", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "88d649a2853f2e8a259ce5bdd8b8c172f87a64523176e79a536c142a902f7019", kill_on_drop: false }`
[INFO] [stdout] 88d649a2853f2e8a259ce5bdd8b8c172f87a64523176e79a536c142a902f7019
